Techniques for estimating camera parameters from images obtained by observing known three-dimensional points are important elemental techniques in robot self position estimation and image synthesis (see, for example, Non-Patent Documents 1 to 5). Also, there are two types of camera parameters: extrinsic parameters and intrinsic parameters. Extrinsic parameters are parameters that represent the position and rotation of a camera in a three-dimensional space, and intrinsic parameters are parameters such as a lens focal length, an optical center, an aspect ratio, a shear coefficient, and a lens distortion coefficient. Hereinafter, a pair of a known three-dimensional point and a two-dimensional point obtained by observing the three-dimensional point on an image will be referred to as simply a ‘corresponding point’.
Both Non-Patent Document 1 and Non-Patent Document 2 disclose a method of calculating extrinsic parameters and intrinsic parameters using a plane where three-dimensional points of a surface pattern are known, or images obtained by photographing a solid pattern from a plurality of angles. In the methods disclosed in these non-patent documents, first all lens distortion coefficients are assumed to be zero, and the intrinsic parameters and the extrinsic parameters are calculated, ignoring constraining conditions related to rotation. Then, nonlinear optimization is performed by Newton's method or the like, using the intrinsic parameters and extrinsic parameters that were calculated as initial values.
Also, Non-Patent Document 3 discloses a method in which intrinsic parameters are calculated in advance using the methods disclosed in Non-Patent Document 1 and Non-Patent Document 2, and only extrinsic parameters are calculated from at least three sets of corresponding points. Specifically, in the method disclosed in Non-Patent Document 3, an error function based on a projection relationship between three-dimensional points and two-dimensional points is represented as a polynomial, and by calculating all zero points of slopes that are stationary points of the error function, local minimums are avoided and a globally optimal unique solution is estimated.
Furthermore, Non-Patent Document 4 discloses a method in which only the focal length is considered to be unknown among the intrinsic parameters, and similar to the method disclosed in Non-Patent Document 3, a globally optimal solution is directly calculated from a polynomial expression using at least four sets of corresponding points.
Also, Non-Patent Document 5 and Non-Patent Document 6 disclose methods in which, respectively using four sets or five sets of corresponding points as input, the focal length and the lens distortion coefficient are considered to be unknown among the intrinsic parameters, and both these intrinsic parameters and the extrinsic parameters are calculated.
Furthermore, Non-Patent Document 7 discloses a method in which the focal length and the lens distortion coefficient are considered to be unknown among the intrinsic parameters, and the intrinsic parameters and the extrinsic parameters are calculated using at least five sets of corresponding points. Specifically, the error function is divided into a plurality of subproblems based on dependency among the camera parameters, and in the respective subproblems, similar to the method disclosed in Non-Patent Document 3, a globally optimal solution is calculated from a polynomial expression.